const app = getApp()
var util = require('./util.js')
var request = new Object()

// 设置token
request.setToken = function (tokenName, data) {
  console.log('setToken')
  wx.setStorage({
    key: tokenName,
    data: data
  })
}
//获取token
request.getToken = function (tokenName) {
  return wx.getStorageSync(tokenName)
}
//移除token
request.removeToken = function (tokenName) {
  wx.removeStorageSync(tokenName)
}



// 前端登录接口   //不需要token
request.loginRequest = function (obj) {
  wx.showToast({
    title: '加载中',
    icon: 'loading',
    duration: 10000
  })
  return new Promise((resolve, reject) => {
    wx.request({
      url: util.config().api + obj.url,
      data: obj.data,
      method: obj.method,
      header: {
        "Content-Type": "application/json;charset=utf-8"
      },
      success: function (res) {
        wx.hideToast()
        if (res.data.code === 200) {
          resolve(res)
        } else {
          console.log('err', res)
          wx.showToast({
            title: res.data.msg,
            icon: "none"
          })
        }
      },
      fail: function (err) {
        reject(err)
        wx.showToast({
          title: err.data.msg,
          icon: none
        })
      }
    })
  })
}
// 前端请求接口   //需要token
request.wxRequest = function (obj) {
  wx.showToast({
    title: '加载中',
    icon: 'loading',
    duration: 10000
  })
  return new Promise((resolve, reject) => {
    wx.request({
      url: util.config().api + obj.url,
      data: obj.data,
      method: obj.method,
      header: {
        "Content-Type": "application/json;charset=utf-8",
        'Authorization': 'Bearer ' + request.getToken('token')
      },
      success: function (res) {
        wx.hideToast()
        if (res.data.code === 200) {
          resolve(res)
        } else if (res.data.code === 401) {
          wx.showToast({
            title: '登录过期，请重新授权',
            icon: "none",
            duration: 1000,
            success: function () {
              wx.clearStorageSync()
              setTimeout(() => {
                wx.navigateTo({
                  url: '/pages/normal/mine/login/index',
                })
              }, 1000);
            }
          })
        } else {
          wx.showToast({
            title: res.data.msg || "系统问题,请重新操作！",
            icon: "none",
            duration: 1000,
            success: function () {
              // wx.switchTab({
              //   url: '/pages/normal/index/index/index',
              // })
            }
          })
        }
        // if (res.data.code === 401) {
        //   request.removeToken('token')
        //   wx.showToast({
        //     title: '登录失效，请重新授权！',
        //     icon: "none",
        //     success: function () {

        //     }
        //   })
        //   resolve(res)
        // } else if (res.data.code === 200) {
        //   resolve(res)
        // } else if (res.data.msg == '' && res.data.code != 200) {
        //   wx.showToast({
        //     title: '请先登录哦！',
        //     icon: "none"
        //   })
        //   request.removeToken('token')
        // } else if (!!res.data.msg && res.data.code != 200) {
        //   wx.showToast({
        //     title: res.data.msg,
        //     icon: "none"
        //   })
        // }
      },
      fail: function (err) {

        wx.showToast({
          title: res.data.code + '，' + err.data.msg,
          icon: "none"
        })

        reject(err)

      }
    })
  })



}


module.exports = request


// 接口使用
//     var postObj = {
//   url: '/mobileUser/subscribe/getPerson/' + this.data.deptId,
//   method: 'get',
// }
// app.request.wxRequest(postObj).then(res => {
//   if (res.data.code === 200) {
//     console.log('获取可选会见人列表', res)
//   }
// })







// // 前端登录接口   //不需要token
// request.loginRequest = function (url, data, method) {
//   return new Promise((resolve, reject) => {
//     wx.request({
//       url: util.config().api + url,
//       data: data,
//       method: method,
//       header: {
//         "Content-Type": "application/json;charset=utf-8"
//       },
//       success: function (res) {
//         if (res.data.code === 200) {
//           resolve(res)
//           // request.setToken('token', res.data.data)
//           // wx.showToast({
//           //   title: res.data.msg,
//           //   icon: "success"
//           // })
//         } else {
//           console.log('err', res)
//           wx.showToast({
//             title: res.data.msg,
//             icon: "none"
//           })
//         }
//       },
//       fail: function (err) {
//         reject(err)
//         wx.showToast({
//           title: err.data.msg,
//           icon: none
//         })
//       }
//     })
//   })
// }
// // 前端请求接口   //需要token
// request.wxRequest = function (url, data, method) {
//   return new Promise((resolve, reject) => {
//     wx.request({
//       url: util.config().api + url,
//       data: data,
//       method: method,
//       header: {
//         "Content-Type": "application/json;charset=utf-8",
//         'Authorization': 'Bearer ' + request.getToken('token')
//       },
//       success: function (res) {

//         if (res.data.code === 401) {
//           request.removeToken('token')
//           wx.showToast({
//             title: '登录失效，请重新报名授权！',
//             icon: "none",
//             success: function () {
//               wx.redirectTo({
//                 url: '/pages/news/news',
//               })
//             }
//           })
//           // wx.navigateTo({
//           //   url: '/pages/index/index',
//           // })


//           // if (!!request.getToken('token')) {
//           //   request.removeToken('token')
//           //   // wx.reLaunch({
//           //   //   url: '/pages/loginIndex/loginIndex',
//           //   // })
//           // }
//           resolve(res)
//         } else if (res.data.code === 200) {
//           resolve(res)
//         } else if (res.data.msg == '' && res.data.code != 200) {
//           wx.showToast({
//             title: '请先登录哦！',
//             icon: "none"
//           })
//           request.removeToken('token')
//         } else if (!!res.data.msg && res.data.code != 200) {
//           wx.showToast({
//             title: res.data.msg,
//             icon: "none"
//           })
//         }
//       },
//       fail: function (err) {
//         reject(err)
//         wx.showToast({
//           title: res.data.code + '，' + err.data.msg,
//           icon: "none"
//         })
//       }
//     })
//   })



// }